升级为WebSocket
连接。
function Coroutine\Http\Client->upgrade(string $path);
- 请求失败返回
false
,成功返回true
- 某些情况下请求虽然是成功的,
upgrade
返回了true
,但服务器并未设置HTTP
状态码为101
,而是200
或403
,这说明服务器拒绝了握手请求 WebSocket
握手成功后可以使用push
方法向服务器端推送消息,也可以调用recv
接收消息upgrade
会产生一次协程调度
go(function () {
$cli = new Co\http\Client("127.0.0.1", 9501);
$ret = $cli->upgrade("/");
if ($ret) {
while(true) {
$cli->push("hello");
var_dump($cli->recv());
co::sleep(0.1);
}
}
});